Week4-Operations-Architecture

Week 4: 운영 및 최적화 아키텍처

CloudWatch 모니터링, 비용 최적화, IAM 보안 강화를 통한 실제 운영 환경 완성

mermaid-diagram-2025-09-09-153203.png

아키텍처 개요

통합 모니터링 및 운영 체계
    ↓
CloudWatch Dashboard (통합 대시보드)
    ↓
Week 3.5 HA 아키텍처 + 운영 레이어
├── 모니터링 계층
│   ├── CloudWatch Metrics
│   ├── CloudWatch Alarms  
│   ├── CloudWatch Logs
│   └── SNS 알림
├── 비용 관리 계층
│   ├── Cost Explorer
│   ├── Budget Alerts
│   ├── Reserved Instance
│   └── Spot Instance
└── 보안 관리 계층
    ├── IAM Roles & Policies
    ├── Security Groups 최적화
    ├── VPC Flow Logs
    └── AWS Config

1. CloudWatch 통합 모니터링

대시보드 구성

Main Dashboard: "WebApp Production"
├── 인프라 상태
│   ├── ALB Target Health
│   ├── EC2 Instance Status
│   ├── RDS Connection Count
│   └── Auto Scaling Activity
├── 성능 메트릭
│   ├── Response Time (ALB)
│   ├── CPU Utilization (EC2)
│   ├── Memory Usage (Custom)
│   └── Database Performance (RDS)
├── 비즈니스 메트릭
│   ├── Request Count
│   ├── Error Rate (4xx/5xx)
│   ├── User Sessions
│   └── Page Load Time
└── 비용 메트릭
    ├── Daily Spend
    ├── Resource Utilization
    └── Cost per Request

핵심 알람 설정

Critical Alarms:
├── High Error Rate (5xx > 5%)
├── Low Healthy Targets (< 1개)
├── RDS CPU High (> 80%)
├── Database Connection Exhaustion
└── Auto Scaling Failed

Warning Alarms:
├── Response Time High (> 2초)
├── EC2 CPU High (> 70%)
├── Disk Space Low (< 20%)
├── Memory Usage High (> 85%)
└── Daily Cost Spike (> 150% 평균)

로그 통합 관리

Log Groups:
├── /aws/applicationloadbalancer/webapp-alb
├── /aws/ec2/webapp-web
├── /aws/ec2/webapp-was  
├── /aws/rds/instance/webapp-db/error
└── /webapp/application

Log Insights 쿼리:
├── 에러 패턴 분석
├── 성능 병목 식별
├── 사용자 행동 분석
└── 보안 이벤트 탐지

2. 비용 분석 및 최적화

Cost Explorer 분석

비용 분석 관점:
├── 서비스별 비용 (EC2, RDS, ALB)
├── 리전별 비용 분포
├── 태그별 비용 추적
├── 시간대별 사용 패턴
└── 예약 인스턴스 효율성

최적화 기회:
├── Underutilized Resources
├── Right-sizing 권장사항
├── Reserved Instance 추천
├── Spot Instance 적용 가능성
└── S3 Storage Class 최적화

예상 비용 구조 (월 기준)

Week 4 완성 후 예상 비용:
├── EC2 Instances: $60-120 (Auto Scaling)
├── RDS Multi-AZ: $25
├── ALB: $18
├── CloudWatch: $5-10
├── Data Transfer: $5-15
├── EBS Storage: $8
└── 총 예상 비용: $121-196/월

최적화 후 절감 효과:
├── Reserved Instance: 30% 절약
├── Spot Instance: 60% 절약
├── 적정 사이징: 20% 절약
└── 예상 절감 비용: 40-50%

비용 최적화 전략

단기 최적화 (즉시 적용):
├── 사용하지 않는 EBS 볼륨 삭제
├── 개발 환경 스케줄링 (평일만 운영)
├── CloudWatch Logs 보존 기간 조정
└── 불필요한 보안 그룹 정리

중기 최적화 (1-3개월):
├── Reserved Instance 구매
├── Auto Scaling 정책 튜닝
├── 애플리케이션 성능 최적화
└── 데이터베이스 쿼리 최적화

장기 최적화 (6개월+):
├── 컨테이너화 (ECS/EKS)
├── 서버리스 아키텍처 적용
├── CDN 도입 (CloudFront)
└── 멀티 리전 아키텍처

3. IAM 보안 심화

최소 권한 원칙 적용

역할별 IAM 정책:

EC2 Instance Role:
├── CloudWatchAgentServerPolicy
├── S3 배포 버킷 읽기 권한
├── Systems Manager 접근
└── 자체 태그 읽기 권한

Auto Scaling Role:
├── EC2 인스턴스 시작/종료
├── ELB 등록/해제
├── CloudWatch 메트릭 접근
└── SNS 알림 전송

Developer Role:
├── EC2 읽기 권한
├── CloudWatch 대시보드 접근
├── 개발 환경만 수정 권한
└── 프로덕션 환경 읽기 전용

Administrator Role:
├── 전체 서비스 관리 권한
├── 비용 관리 접근
├── IAM 정책 관리
└── 감사 로그 접근

보안 강화 조치

네트워크 보안:
├── VPC Flow Logs 활성화
├── 보안 그룹 최소화
├── NACL 추가 제한
└── WAF 규칙 적용

접근 제어:
├── MFA 필수 설정
├── 임시 자격 증명 사용
├── 정기적 권한 검토
└── 접근 로그 모니터링

데이터 보호:
├── 저장 시 암호화 (EBS, RDS, S3)
├── 전송 중 암호화 (TLS)
├── KMS 키 관리
└── 백업 암호화

4. 운영 자동화

모니터링 자동화

CloudWatch Alarms → SNS → Lambda
├── 장애 발생 시 Slack 알림
├── 자동 스케일링 이벤트 알림
├── 비용 임계값 초과 알림
└── 보안 이벤트 알림

자동 대응:
├── 비정상 인스턴스 자동 교체
├── 로그 보존 기간 자동 관리
├── 백업 스케줄 자동 실행
└── 보안 패치 자동 적용

백업 및 복구 자동화

백업 전략:
├── RDS 자동 백업 (7일 보관)
├── EBS 스냅샷 (일일)
├── 애플리케이션 코드 (S3)
└── 설정 파일 백업

복구 절차:
├── 인스턴스 복구 자동화
├── 데이터베이스 Point-in-Time 복구
├── Cross-Region 재해 복구
└── 복구 테스트 자동화

5. 성능 최적화

애플리케이션 최적화

웹 서버 (Apache):
├── Keep-Alive 최적화
├── 압축 설정 (Gzip/Brotli)
├── 캐시 헤더 최적화
├── 정적 자원 CDN 연동
└── HTTP/2 활성화

WAS 서버 (Tomcat):
├── JVM 힙 메모리 튜닝
├── 연결 풀 최적화
├── 세션 클러스터링
├── 가비지 컬렉션 튜닝
└── 애플리케이션 프로파일링

데이터베이스 최적화

RDS MySQL 최적화:
├── 파라미터 그룹 튜닝
├── 인덱스 최적화
├── 쿼리 성능 분석
├── 연결 풀 관리
└── Read Replica 고려

모니터링 메트릭:
├── Slow Query Log
├── Connection Count
├── Buffer Pool Hit Ratio
├── I/O Wait Time
└── Replication Lag

6. 실제 운영 시나리오

일일 운영 루틴

오전 점검:
├── 야간 알람 검토
├── 성능 대시보드 확인
├── 비용 사용량 체크
├── 백업 상태 확인
└── 보안 이벤트 검토

주간 점검:
├── 용량 계획 검토
├── 성능 트렌드 분석
├── 비용 최적화 기회 식별
├── 보안 정책 업데이트
└── 재해 복구 테스트

장애 대응 프로세스

알람 발생 → 즉시 대응:
1. 영향 범위 평가 (5분 이내)
2. 임시 조치 실행 (15분 이내)
3. 근본 원인 분석 (1시간 이내)
4. 영구 해결책 적용 (4시간 이내)
5. 사후 분석 보고서 작성

에스컬레이션 매트릭스:
├── Level 1: 자동 복구
├── Level 2: 운영자 개입
├── Level 3: 개발팀 지원
└── Level 4: 외부 전문가

Week 4 완성: 실제 운영 가능한 엔터프라이즈급 웹 서비스 완성
전체 과정 요약: AWS EDU/Archive/조선대학교 AWS 멘토링/Edu Architecture/README